package com.jyw.business.de.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.jyw.common.annotation.Excel;
import com.jyw.common.core.domain.BaseEntity;
import lombok.Data;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;

/**
 * 需求-需求信息对象 de_demand_info
 * 
 * @author ruoyi
 * @date 2024-02-19
 */
@Data
@TableName("de_demand_info")
@ApiModel("需求-需求信息实体")
public class DeDemandInfo
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @ApiModelProperty("主键")
    @TableId(type = IdType.AUTO)
    private Long id;

    /** 需求编码 */
    @ApiModelProperty("需求编码")
    @Excel(name = "需求编码")
    private String demandCode;

    /** 需求标题 */
    @ApiModelProperty("需求标题")
    @Excel(name = "需求标题")
    private String demandTitle;

    /** 需求类型 */
    @ApiModelProperty("需求类型")
    @Excel(name = "需求类型")
    private String demandType;

    /** 需求描述 */
    @ApiModelProperty("需求描述")
    @Excel(name = "需求描述")
    private String demandRemark;

    /** 涉及系统(数据字典多选) */
    @ApiModelProperty("涉及系统(数据字典多选)")
    @Excel(name = "涉及系统(数据字典多选)")
    private String demandSystem;

    /** 附件 */
    @ApiModelProperty("附件")
    @Excel(name = "附件")
    private String demandEnclosure;

    /** 状态 */
    @ApiModelProperty("状态")
    @Excel(name = "状态")
    private String demandState;

    /** 需求负责人 */
    @ApiModelProperty("需求负责人")
    @Excel(name = "需求负责人")
    private Long demandUser;

    /** 需求进度(整数0-100) */
    @ApiModelProperty("需求进度(整数0-100)")
    @Excel(name = "需求进度(整数0-100)")
    private Integer demandProcess;

    /** 工单来源(OA,工单升级,新增需求) */
    @ApiModelProperty("工单来源(OA,工单升级,新增需求)")
    @Excel(name = "工单来源(OA,工单升级,新增需求)")
    private String demandSource;

    /** 转交人 */
    @ApiModelProperty("转交人")
    @Excel(name = "转交人")
    private Long transferUser;

    /** 转交暂存状态(接受后,需求状态需要设置为转交前状态) */
    @ApiModelProperty("转交暂存状态(接受后,需求状态需要设置为转交前状态)")
    @Excel(name = "转交暂存状态(接受后,需求状态需要设置为转交前状态)")
    private String transferState;

    /** 暂停暂存状态 */
    @ApiModelProperty("暂停暂存状态")
    @Excel(name = "暂停暂存状态")
    private String pauseState;

    /** 提出日期 */
    @ApiModelProperty("提出日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "提出日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date submitDate;

    /** 创建人(OA推送应该没有,新增需求才会有) */
    @ApiModelProperty("创建人(OA推送应该没有,新增需求才会有)")
    @Excel(name = "创建人(OA推送应该没有,新增需求才会有)")
    private Long createUser;

    /** 创建时间 */
    @ApiModelProperty("创建时间")
    private Date createTime;

    /** 创建时间 */
    @ApiModelProperty("进入待分配时间")
    private Date waitAllocationTime;

    /** 创建时间 */
    @ApiModelProperty("进入待接收时间")
    private Date waitAcceptTime;

}
